package MediciADistanza.Boundary.user.SpecificUser.ST;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JList;

import MediciADistanza.Control.User.UtenteControl;
import MediciADistanza.Control.User.SpecificUserCTRL.OperatoreSTControl;
import MediciADistanza.Boundary.user.InterfacciaUtente;
import MediciADistanza.Entity.Email;


/**
 * Interfaccia principale di un utente del ST, essa contiene il tasto per modificare le specializzazioni
 * 
 * <p>Semi Implementata</p>
 * 
 * @author Andrea Iann&igrave;
 */
public class InterfacciaST extends InterfacciaUtente {
	/**
	 * 
	 */
	private static final long serialVersionUID = -5381068193701313932L;
	/**
	 * Bottone di modifica delle specializzazioni
	 */
	private JButton modificaSpecs;
	/**
	 * Bottone di reset della password
	 */
	private JButton resetPSWButton;
	/**
	 * Crea l'interfaccia principale di un utente ST	
	 * @param listaEmail	Lista delle email da visualizzare
	 * @param utenteControl	Control principale dell'utente
	 * @param name			Nome dell'utente
	 * @param surname		Cognome dell'utente
	 */
	public InterfacciaST(JList<Email> listaEmail, OperatoreSTControl utenteControl,
			String name, String surname) {
		super(listaEmail, utenteControl, name, surname);
		// TODO Auto-generated constructor stub
		
		modificaSpecs = new JButton("Modifica Specializzazioni");
		resetPSWButton =  new JButton("Resetta Password");
		
		resetPSWButton.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent arg0) {
				// TODO Auto-generated method stub
				resetPSWpressed();
			}
		});
		modificaSpecs.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				specializzazioniPressed();
			}
		});
		
		this.getContentPane().add(modificaSpecs);
	}
	/**
	 * Azione da eseguire in caso di pressione del tasto reset passoword
	 */
	private void resetPSWpressed() {
		utenteControl.avvia(UtenteControl.RESET_PSW);
	}
	/**
	 * Azione da eseguire in caso di pressione del tasto Modifica Specializzazioni
	 */
	private void specializzazioniPressed() {
		utenteControl.avvia(OperatoreSTControl.MOD_SPECS);
	}
	 
}
 
